Programming Constructs for Nonprocedural Languages∗

نویسنده

  • William W. Wadge
چکیده

In this paper we show how a pure denotative (nonprocedural) language based on the λ-calculus can be provided with purely denotative analogs of the various constructs—such as while loops, blocks, case statements and the like—of conventional imperative structured programming languages. They can be simulated quite adequately using only two simple tools: phrases, which are compound expressions not unlike blocks, and pronouns, special variables not unlike keywords between which certain relationships are ‘understood’ to hold.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Generating Data Flow Programs from Nonprocedural Specifications

Data flow is a mode of parallel computation in which parallelism in a program can be exploited at the fine grained as well as macro level. A data flow computer executes a data dependency graph rather than the program counter controlled sequence of instructions executed by conventional machines. Nonprocedural languages appear to be especially appropriate high level languages for data flow comput...

متن کامل

The Effects of Using a Nonprocedural Computer Language on Programmer Productivity

An empirical experiment was conducted in order to compare a third generation, procedural anguage (COBOL) with a fourth generation, nonprocedural language (Focus) in terms of programmer productivity and program efficiency. Six applications were developed in two languages by different programmers who had been matched according to their level of expertise. The results of the experiment showed that...

متن کامل

Viscid, a vi-like screen editor written in Lucid∗

In this paper we describe a full screen editor program written entirely in Lucid, a functional dataflow language. Our goal was to verify that pure nonprocedural languages can be used to program ‘realistic’ applications, including ones involving interactive I/O. The editor (which we call viscid) is similar to the vi editor of Berkeley UNIX(TM). Viscid is much simpler than vi but does handle basi...

متن کامل

Programming Languages for Reusable Software Components Programming Languages for Reusable Software Components

Programming languages ooer a variety of constructs to support code reuse. For example , functional languages provide function constructs for encapsulating expressions to be used in multiple contexts. Similarly, object-oriented languages provide class (or class-like) constructs for encapsulating sets of deenitions that are easily adapted for new programs. Despite the variety and abundance of suc...

متن کامل

Formal Language Recognition with the Java Type Checker

This paper is a theoretical study of a practical problem: the automatic generation of Java Fluent APIs from their specification. We explain why the problem’s core lies with the expressive power of Java generics. Our main result is that automatic generation is possible whenever the specification is an instance of the set of deterministic context-free languages, a set which contains most “practic...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2012